HTML Web Storage API

কুকিজের চেয়ে ভালো

HTML Web Storage API

HTML ওয়েব স্টোরেজ API; কুকিজের চেয়ে ভালো।

HTML ওয়েব স্টোরেজ কি?

ওয়েব স্টোরেজ সহ, অ্যাপ্লিকেশনগুলি ব্যবহারকারীর ব্রাউজারে স্থানীয়ভাবে ডেটা সঞ্চয় করতে পারে।

HTML5 এর আগে, অ্যাপ্লিকেশন ডেটা কুকিগুলিতে সংরক্ষণ করতে হত, যা প্রতিটি সার্ভারের অনুরোধে যোগ করা হয়েছিল। ওয়েব স্টোরেজ খুবই নিরাপদ, এবং ওয়েবসাইটের কর্মক্ষমতা প্রভাবিত না করেই প্রচুর পরিমাণে ডেটা স্থানীয়ভাবে সংরক্ষণ করা যেতে পারে।

কুকিজ থেকে ভিন্ন, স্টোরেজ সীমা অনেক বড় (অন্তত 5MB) এবং তথ্য সার্ভারে স্থানান্তর করা হয় না।

ওয়েব স্টোরেজ মূল ভিত্তিক (ডোমেন এবং প্রোটোকল ভিত্তিক)। সমস্ত পৃষ্ঠাগুলি একটি একক উত্স থেকে একই ডেটা সংরক্ষণ এবং অ্যাক্সেস করতে পারে৷

ওয়েব স্টোরেজ API অবজেক্ট

ওয়েব স্টোরেজ ব্রাউজারে ডেটা সঞ্চয় করার জন্য দুটি বস্তু প্রদান করে:

window.localStorage

মেয়াদ শেষ হওয়ার তারিখ ছাড়াই ডেটা সংরক্ষণ করে (ব্রাউজার ট্যাব বন্ধ থাকলেও ডেটা হারিয়ে যায় না)

window.sessionStorage

প্রতি সেশনে ডেটা সংরক্ষণ করে (ব্রাউজার ট্যাব বন্ধ থাকলে ডেটা হারিয়ে যায়)

ব্রাউজার সমর্থন

টেবিলের সংখ্যাগুলি প্রথম ব্রাউজার সংস্করণকে উপস্থাপন করে যা সম্পূর্ণরূপে ওয়েব স্টোরেজ সমর্থন করে।

API Chrome Edge Firefox Safari Opera
localStorage 4.0 8.0 3.5 4.0 11.5
sessionStorage 4.0 8.0 3.5 4.0 11.5

ওয়েব স্টোরেজ API সমর্থন পরীক্ষা করুন

WebStorage ব্যবহার করার আগে, আসুন স্থানীয় স্টোরেজ এবং সেশন স্টোরেজের জন্য ব্রাউজার সমর্থন দ্রুত পরীক্ষা করে দেখি:

উদাহরণ

<script>
const x = document.getElementById("result");
if (typeof(Storage) !== "undefined") {
  x.innerHTML = "Your browser supports Web storage!";
} else {
  x.innerHTML = "Sorry, no Web storage support!";
}
</script>

আপনার ব্রাউজার সমর্থন পরীক্ষা করুন:

এখানে ফলাফল প্রদর্শিত হবে...

স্থানীয় স্টোরেজ অবজেক্ট

লোকাল স্টোরেজ অবজেক্ট মেয়াদ শেষ হওয়ার তারিখ ছাড়াই ডেটা সঞ্চয় করে। ব্রাউজার বন্ধ থাকলেও ডেটা হারিয়ে যায় না এবং পরের দিন, সপ্তাহ বা বছরের জন্য উপলব্ধ থাকে।

উদাহরণ

<script> const x = document.getElementById("ফলাফল"); if (typeof(Storage) !== "অনির্ধারিত") { // সংরক্ষণ করুন localStorage.setItem("শেষ নাম", "স্মিথ"); localStorage.setItem("bgcolor", "হলুদ"); // পুনরুদ্ধার করুন x.innerHTML = localStorage.getItem("শেষ নাম"); x.style.backgroundColor = localStorage.getItem("bgcolor"); } অন্য { x.innerHTML = "দুঃখিত, ওয়েব স্টোরেজ সমর্থন নেই!"; } </script>

উদাহরণ বর্ণনা:

  1. নাম/মান জোড়া তৈরি করতেlocalStorage.setItem()পদ্ধতি ব্যবহার করুন
  2. সেট মান পুনরুদ্ধার করতেlocalStorage.getItem()পদ্ধতি ব্যবহার করুন
  3. "শেষ নাম" মান পুনরুদ্ধার করুনid="result"উপাদান মধ্যে সন্নিবেশ
  4. "bgcolor" এর মান পুনরুদ্ধার করুন।id="result"উপাদানটির পটভূমির রঙে সন্নিবেশ করুন

"শেষ নাম" স্থানীয় স্টোরেজ আইটেমটি সরানোর জন্য সিনট্যাক্স নিম্নরূপ:

localStorage.removeItem("lastname");

দ্রষ্টব্য:

নাম/মান জোড়া সবসময় স্ট্রিং হিসাবে সংরক্ষণ করা হয়. প্রয়োজনে সেগুলিকে অন্য ফরম্যাটে রূপান্তর করতে মনে রাখবেন!

লোকাল স্টোরেজ দিয়ে ক্লিক গণনা করা হচ্ছে

নিম্নলিখিত উদাহরণে একজন ব্যবহারকারী কতবার একটি বোতামে ক্লিক করেছে তা গণনা করে। এই কোডে মানটিকে একটি স্ট্রিং নম্বরে রূপান্তরিত করা হয় যাতে কাউন্টারটি বৃদ্ধি করা যায়:

উদাহরণ

<script>
function clickCounter() {
  const x = document.getElementById("result");
  if (typeof(Storage) !== "undefined") {
    if (localStorage.clickcount) {
      localStorage.clickcount = Number(localStorage.clickcount)+1;
    } else {
      localStorage.clickcount = 1;
    }
    x.innerHTML = "You have clicked the button " + localStorage.clickcount + " time(s)!";
  } else {
    x.innerHTML = "Sorry, no Web storage support!";
  }
}
</script>

localStorage ক্লিক কাউন্টার:

ক্লিক সংখ্যা এখানে প্রদর্শিত হয়...

সেশন স্টোরেজ অবজেক্ট

সেশনস্টোরেজ অবজেক্ট স্থানীয় স্টোরেজ অবজেক্টের সমতুল্য, যা শুধুমাত্র একটি সেশনের জন্য ডেটা সঞ্চয় করে! ব্যবহারকারী নির্দিষ্ট ব্রাউজার ট্যাব বন্ধ করে দিলে ডেটা মুছে ফেলা হয়।

সেশন স্টোরেজ সহ ক্লিক গণনা করা হচ্ছে

নিম্নলিখিত উদাহরণটি বর্তমান সেশনে একজন ব্যবহারকারী কতবার একটি বোতামে ক্লিক করেছে তা গণনা করে:

উদাহরণ

<script>
function clickCounter() {
  const x = document.getElementById("result");
  if (typeof(Storage) !== "undefined") {
    if (sessionStorage.clickcount) {
      sessionStorage.clickcount = Number(sessionStorage.clickcount)+1;
    } else {
      sessionStorage.clickcount = 1;
    }
    x.innerHTML = "You have clicked the button " + sessionStorage.clickcount + " time(s) in this session!";
  } else {
    x.innerHTML = "Sorry, no Web storage support!";
  }
}
</script>

সেশন স্টোরেজ ক্লিক কাউন্টার:

ক্লিক সংখ্যা এখানে প্রদর্শিত হয়...

দ্রষ্টব্য:

সেশন স্টোরেজ কাউন্টারটি সরাতে বোতামটি ক্লিক করলে ট্যাবটি রিফ্রেশ করা উচিত এবং একটি নতুন অধিবেশন শুরু করা উচিত। অথবা ব্রাউজার ট্যাব বন্ধ করুন এবং একটি নতুন খুলুন।

ওয়েব স্টোরেজ পদ্ধতি

setItem(key, value)

নির্দিষ্ট কী এবং মান জোড়া সংরক্ষণ করে

getItem(key)

নির্দিষ্ট কী এর মান পুনরুদ্ধার করে

removeItem(key)

নির্দিষ্ট কী এবং এর মান সরিয়ে দেয়

clear()

সমস্ত কী/মান জোড়া সরিয়ে দেয়

key(index)

নির্দিষ্ট সূচকে কীটির নাম প্রদান করে

length

সঞ্চিত আইটেমের সংখ্যা প্রদান করে

অনুশীলন করুন

ব্রাউজার ট্যাব বন্ধ হওয়ার পরেও নিচের কোন ওয়েব স্টোরেজ অবজেক্ট ডেটা বজায় রাখে?

sessionStorage
✗ ভুল! sessionStorage শুধুমাত্র একটি সেশনের জন্য ডেটা সঞ্চয় করে। ব্রাউজার ট্যাব বন্ধ হয়ে গেলে ডেটা হারিয়ে যায়
localStorage
✓ ঠিক আছে! লোকাল স্টোরেজ মেয়াদ শেষ হওয়ার তারিখ ছাড়াই ডেটা সঞ্চয় করে। ব্রাউজার বন্ধ করার পরেও ডেটা পাওয়া যায়
cookieStorage
✗ ভুল! "cookieStorage" একটি বৈধ ওয়েব স্টোরেজ API অবজেক্ট নয়